home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: Alpha / Whiteline Alpha.iso / tools / cpx_acc / cpxa / xcontrol.h < prev   
Encoding:
C/C++ Source or Header  |  1994-09-22  |  3.9 KB  |  111 lines

  1. /* XCONTROL.H - Includedateien zum XCONTROL */
  2. /* s. ST-Computer 3/91 */
  3.  
  4.  
  5. /* Definitionen */
  6. #define    VERTIKAL        0
  7. #define    HORIZTONTAL        1
  8.  
  9. #define    SAVE_DEFAULTS    0
  10. #define    MEM_ERR            1
  11. #define FILE_ERR        2
  12. #define FILE_NOT_FOUND    3
  13.  
  14. #define MFSAVE            1
  15. #define MFRESTORE        0
  16.  
  17. #define CT_KEY            53
  18.  
  19. /* Wenn eine Message von Xcontrol kommt */
  20. #define MESSAGE -1
  21.  
  22.  
  23. /* Header eines CPX-Moduls */
  24. typedef struct
  25. {
  26.     UWORD        magic;                /* Muss 100 sein */
  27.  
  28.     struct
  29.     {
  30.         unsigned    reserved:    13;
  31.         unsigned    resident:    1;    /* RAM-Resident */
  32.         unsigned    bootinit:    1;    /* Boot-Initialisierung */
  33.         unsigned    setonly:    1;    /* Set-Only */
  34.  
  35.     }flags;
  36.  
  37.     LONG        cpx_id;                /* CPX-ID */
  38.     UWORD        cpx_version;        /* CPX-Versionsnummer */
  39.     BYTE        i_text[14];            /* Icontext */
  40. /*    UWORD        sm_icon[48];        /* Bitmap( 32 * 24 Pixel ) */*/
  41.     ULONG        sm_icon[24];
  42.     UWORD        i_color;            /* Iconfarbe */
  43.     BYTE        title_text[18];        /* CPX-Name */
  44.     UWORD        t_color;            /* Textfarbe */
  45.     BYTE        buffer[64];            /* nicht flüchtiger Puffer */
  46.     BYTE        reserved[306];        /* reserviert */
  47.  
  48. }CPXHEAD;
  49.  
  50. /* Ergebnisstruktur für Mausereignis */
  51.  
  52. typedef struct
  53. {
  54.     WORD        x, y;
  55.     WORD        buttons;
  56.     WORD        kstate;
  57.  
  58. }MRETS;
  59.  
  60. /* Definition der Funktionen zur Ereignisbehandlung */
  61.  
  62. typedef struct
  63. {
  64.     WORD        cdecl (* cpx_call ) ( GRECT *work );
  65.     VOID        cdecl (* cpx_draw ) ( GRECT *clip );
  66.     VOID        cdecl (* cpx_vmove ) ( GRECT *work );
  67.     VOID        cdecl (* cpx_timer ) ( WORD *event );
  68.     VOID        cdecl (* cpx_key ) ( WORD kstate, WORD key, WORD *event );
  69.     VOID        cdecl (* cpx_button ) ( MRETS *mrets, WORD nclicks, WORD *event );
  70.     VOID        cdecl (* cpx_m1 ) ( MRETS *mrets, WORD *event );
  71.     VOID        cdecl (* cpx_m2 ) ( MRETS *mrets, WORD *event );
  72.     WORD        cdecl (* cpx_hook ) ( WORD event, WORD *msg, MRETS *mrets, WORD *key, WORD *nclicks );
  73.     VOID        cdecl (* cpx_close ) ( WORD flag );
  74.  
  75. }CPX_INFO;
  76.  
  77. /* Vom Kontrollfeld zur Verfügung gestellte Funktionen */
  78. typedef struct
  79. {
  80.     WORD        handle;                /* aus graf_handle() */
  81.     WORD        booting;
  82.     WORD        reserved;
  83.     WORD        SkipRshFix;            /* ungleich: RSC-Koordinaten schon gefixed */
  84.  
  85.     VOID        *reserve1;
  86.     VOID        *reserve2;
  87.  
  88.     VOID        cdecl (* rsh_fix ) ( WORD num_objs, WORD num_frstr, WORD num_frimg, WORD num_tree, OBJECT *rs_object, TEDINFO *rs_tedinfo, BYTE *rs_strings[], ICONBLK *rs_iconblk, BITBLK *rs_bitblk, LONG *rs_frstr, LONG *rs_frimg, LONG *rs_trindex, \
  89.                                      struct foobar *rs_imdope );
  90.  
  91.     VOID        cdecl (* rsh_obfix ) ( OBJECT *tree, WORD curob );
  92.     WORD        cdecl (* Popup ) ( BYTE *items, WORD num_items, WORD default_item, WORD font_size, GRECT *button, GRECT *world );
  93.     VOID        cdecl (* Sl_size ) ( OBJECT *tree, WORD base, WORD slider, WORD num_items, WORD visible, WORD direction, WORD min_size );
  94.     VOID        cdecl (* Sl_x ) ( OBJECT *tree, WORD base, WORD slider, WORD value, WORD num_min, WORD num_max, VOID (* foo ) ( VOID ) );
  95.     VOID        cdecl (* Sl_y ) ( OBJECT *tree, WORD base, WORD slider, WORD value, WORD num_min, WORD num_max, VOID (* foo ) ( VOID ) );
  96.     VOID        cdecl (* Sl_arrow ) ( OBJECT *tree, WORD base, WORD slider, WORD obj, WORD inc, WORD min, WORD max, WORD *numvar, WORD drrection, VOID (* foo ) ( VOID ) );
  97.     VOID        cdecl (* Sl_drawx ) ( OBJECT *tree, WORD base, WORD slider, WORD min, WORD max, WORD numvar, VOID (* foo ) ( VOID ) );
  98.     VOID        cdecl (* Sl_drawy ) ( OBJECT *tree, WORD base, WORD slider, WORD min, WORD max, WORD numvar, VOID (* foo ) ( VOID ) );
  99.     WORD        cdecl (* Xform_do ) ( OBJECT *tree, WORD start_field, WORD *puntmsg );
  100.     GRECT*        cdecl (* GetFirstRect ) ( GRECT *prect );
  101.     GRECT*        cdecl (* GetNextRect ) ( VOID );
  102.     VOID        cdecl (* Set_Evnt_Mask ) ( WORD mask, MOBLK *m1, MOBLK *m2, LONG time );
  103.     WORD        cdecl (* XGen_alert ) ( WORD id );
  104.     WORD        cdecl (* CPX_Save ) ( VOID *ptr, LONG num );
  105.     VOID*        cdecl (* Get_Buffer ) ( VOID );
  106.     WORD        cdecl (* getcokie ) ( LONG cookie, LONG *p_value );
  107.     WORD        Country_Code;        /* Länderkennung */
  108.     VOID        cdecl (* MFsave ) ( WORD saveit, MFORM *mf );
  109.  
  110. }XCPB;
  111.